home *** CD-ROM | disk | FTP | other *** search
GW-BASIC | 1980-01-01 | 1.9 KB | 60 lines |
- 230 CLS
- 240 ' walking lines program - from BYTE magazine
- 250 ' converted to IBM by Grant Irani - Fallston, MD
- 260 ' additional conversion by Will Fastie
- 270 ' last edit: 22 Dec 81
- 280 DEFINT A-Z
- 290 GOSUB 700
- 300 RANDOMIZE VAL(RIGHT$(TIME$,2))
- 310 CLS
- 320 BACKTINT=0:PALETTE=0
- 330 KEY (1) ON: ON KEY (1) GOSUB 610
- 340 KEY (2) ON: ON KEY (2) GOSUB 640
- 350 SCREEN 1,0
- 360 KEY (10) ON: ON KEY (10) GOSUB 670
- 370 COLOR BACKTINT,PALETTE
- 380 DIM LINES(150,4)
- 390 DEF FNRAND(LIMIT)=INT(RND(1)*LIMIT)+1
- 400 X1=FNRAND(320)-1:Y1=FNRAND(200)-1:DX1=FNRAND(11)-6:DY1=FNRAND(11)-6
- 410 X2=FNRAND(320)-1:Y2=FNRAND(200)-1:DX2=FNRAND(11)-6:DY2=FNRAND(11)-6
- 420 TINT=1
- 430 IX=0 'index into lines
- 440 CNT=0 ' number of lines
- 450 CHGCNT=FNRAND(250)
- 460 LINE (X1,Y1)-(X2,Y2),TINT
- 470 IX=(IX+1)MOD 150
- 480 IF CNT=150 THEN LINE (LINES(IX,0),LINES(IX,1))-(LINES(IX,2),LINES(IX,3)),BACKGRND
- 490 LINES(IX,0)=X1:LINES(IX,1)=Y1:LINES(IX,2)=X2:LINES(IX,3)=Y2
- 500 IF CNT<150 THEN CNT=CNT+1
- 510 CHGCNT=CHGCNT-1
- 520 X1=X1+DX1:IF X1<0 OR X1>319 THEN DX1=-DX1:X1=X1+DX1
- 530 Y1=Y1+DY1:IF Y1<0 OR Y1>199 THEN DY1=-DY1:Y1=Y1+DY1
- 540 X2=X2+DX2:IF X2<0 OR X2>319 THEN DX2=-DX2:X2=X2+DX2
- 550 Y2=Y2+DY2:IF Y2<0 OR Y2>199 THEN DY2=-DY2:Y2=Y2+DY2
- 560 IF CHGCNT>0 GOTO 460
- 570 ' X1=FNRAND(320)-1:Y1=FNRAND(200)-1:X2=FNRAND(320)-1:Y2=FNRAND(200)-1
- 580 DX1=FNRAND(11)-6:DY1=FNRAND(11)-6:DX2=FNRAND(11)-6:DY2=FNRAND(11)-6
- 590 TINT=((TINT+1)MOD 3)+1
- 600 GOTO 450
- 610 BACKTINT=(BACKTINT+1)MOD 16
- 620 COLOR BACKTINT,PALETTE
- 630 RETURN
- 640 PALETTE=PALETTE+1
- 650 COLOR BACKTINT,PALETTE
- 660 RETURN
- 670 ' restore monochrome display
- 680 GOSUB 760
- 690 END
- 700 REM DISPC - Simple program to setup Color/Graphics Display
- 710 REM - from IBM's "C" program on Dealer Demo
- 720 KEY OFF: CLS
- 730 WIDTH 80: DEF SEG=0: A=PEEK(&H410): POKE &H410,(A AND &HCF) OR &H20
- 740 WIDTH 40 :SCREEN 1: SCREEN 0: LOCATE ,,1,6,7
- 750 RETURN
- 760 REM DISPM - Simple program to setup Monochrome Display
- 770 REM - from IBM's "B" program on Dealer Demo
- 780 KEY OFF: CLS
- 790 WIDTH 40: DEF SEG=0: A=PEEK(&H410): POKE &H410,A OR &H30
- 800 WIDTH 80: LOCATE ,,1,12,13: SCREEN 0,0,0
- 810 RETURN
-